package exame_05_06_2012;

import java.util.ArrayList;
import java.util.Map;
import java.util.TreeMap;

public class AppTest {
	public static void main(String[] args) {

		Empresa empresa = new Empresa("OEM");
		init(empresa.getVeiculos());
		
		Map<String, ArrayList<Veiculo>> map = empresa.veiculosPorCliente();

		
		for (String key : map.keySet()) {
			System.out.println("Cliente: " + key + " count v: "
					+ map.get(key).size() + " -> " + map.get(key));

		}

	}

	private static void init(TreeMap<String, Veiculo> treeMap) {

		double capcidadeUtil = 100;
		double custoPorKm = 100;
		ArrayList<Contratavel> ct = new ArrayList<Contratavel>();
		ct.add(new Contratavel() {

			@Override
			public String getCliente() {
				return "Agostinho";
			}

			@Override
			public double getDistancia() {
				return 100;
			}

			@Override
			public double getPeso() {

				return 100;
			}
		});
		ct.add(new Contratavel() {

			@Override
			public String getCliente() {
				return "Agostinho";
			}

			@Override
			public double getDistancia() {
				return 100;
			}

			@Override
			public double getPeso() {

				return 100;
			}
		});

		String mat = "GN";
		Veiculo v = new Van(mat, ct, custoPorKm, capcidadeUtil);
		treeMap.put(mat, v);

		mat = "ED";
		v = new Van(mat, ct, custoPorKm, capcidadeUtil);
		treeMap.put(mat, v);

		mat = "PM";

		ct = new ArrayList<Contratavel>();
		ct.add(new Contratavel() {

			@Override
			public String getCliente() {
				return "Lino";
			}

			@Override
			public double getDistancia() {
				return 100;
			}

			@Override
			public double getPeso() {

				return 100;
			}
		});

		v = new Van(mat, ct, custoPorKm, capcidadeUtil);
		treeMap.put(mat, v);

	}

}
